package com.cyan.note.dto.admin;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 超级管理员查看店铺响应DTO
 * 严格按照数据隔离原则 - 仅返回系统级基础信息
 * 
 * @author ZhangzhenYu
 * @since 2025-01-14
 */
@Data
public class ShopResponse {

    /**
     * 店铺ID
     */
    private Long id;

    /**
     * 店铺名称
     */
    private String name;

    /**
     * 店铺编号
     */
    private String code;

    /**
     * 店铺描述
     */
    private String description;

    /**
     * 联系电话
     */
    private String contactPhone;

    /**
     * 店铺状态
     */
    private String status;

    /**
     * 状态显示名
     */
    private String statusName;

    /**
     * 创建者ID（超级管理员ID）
     */
    private Long createdBy;

    /**
     * 创建者名称
     */
    private String createdByName;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdAt;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updatedAt;

    /**
     * 获取状态显示名
     */
    public String getStatusName() {
        if (status == null) {
            return "未知";
        }
        switch (status) {
            case "active":
                return "运营中";
            case "suspended":
                return "已暂停";
            case "closed":
                return "已关闭";
            default:
                return "未知";
        }
    }
}